Graph coloring algorithms for multi-core and massively multithreaded architectures
نویسندگان
چکیده
0167-8191/$ see front matter 2012 Elsevier B.V http://dx.doi.org/10.1016/j.parco.2012.07.001 ⇑ Corresponding author. Address: Department of 1761; fax: +1 765 494 0739. E-mail address: [email protected] (A.H. Geb We explore the interplay between architectures and algorithm design in the context of shared-memory platforms and a specific graph problem of central importance in scientific and high-performance computing, distance-1 graph coloring. We introduce two different kinds of multithreaded heuristic algorithms for the stated, NP-hard, problem. The first algorithm relies on speculation and iteration, and is suitable for any shared-memory system. The second algorithm uses dataflow principles, and is targeted at the non-conventional, massively multithreaded Cray XMT system. We study the performance of the algorithms on the Cray XMT and two multi-core systems, Sun Niagara 2 and Intel Nehalem. Together, the three systems represent a spectrum of multithreading capabilities and memory structure. As testbed, we use synthetically generated large-scale graphs carefully chosen to cover a wide range of input types. The results show that the algorithms have scalable runtime performance and use nearly the same number of colors as the underlying serial algorithm, which in turn is effective in practice. The study provides insight into the design of high performance algorithms for irregular problems on many-core architectures. 2012 Elsevier B.V. All rights reserved.
منابع مشابه
Graph Coloring Algorithms for Muti-core and Massively Multithreaded Architectures
We explore the interplay between architectures and algorithm design in the context of shared-memory platforms and a specific graph problem of central importance in scientific and high-performance computing, distance-1 graph coloring. We introduce two different kinds of multithreaded heuristic algorithms for the stated, NP-hard, problem. The first algorithm relies on speculation and iteration, a...
متن کاملNew Multithreaded Ordering and Coloring Algorithms for Multicore Architectures
We present new multithreaded vertex ordering and distance-k graph coloring algorithms that are well-suited for multicore platforms. The vertex ordering techniques rely on various notions of “degree”, are known to be effective in reducing the number of colors used by a greedy coloring algorithm, and are generic enough to be applicable to contexts other than coloring. We employ approximate degree...
متن کاملDeterministic Parallel Graph Coloring with Repartitioning by Auxiliary Graph Coloring
In this paper we propose a deterministic parallel graph coloring algorithm that enables Multi-Coloring in parallel for sparse undirected graphs by coarse-grained segmentation and auxiliary graph coloring. The proposed algorithm is implemented and tested on standard problem instances from engineering applications and benchmarked against various relevant deterministic graph coloring algorithms. Q...
متن کاملGreed is Good: Optimistic Algorithms for Bipartite-Graph Partial Coloring on Multicore Architectures
In parallel computing, a valid graph coloring yields a lock-free processing of the colored tasks, data points, etc., without expensive synchronization mechanisms. However, coloring is not free and the overhead can be significant. In particular, for the bipartite-graph partial coloring (BGPC) and distance-2 graph coloring (D2GC) problems, which have various use-cases within the scientific comput...
متن کاملDeterministic Parallel Graph Coloring with Symmetry Breaking
In this paper we propose a deterministic parallel graph coloring algorithm that enables Multi-Coloring in parallel for sparse undirected graphs by coarse-grained segmentation and symmetry breaking. The proposed algorithm is implemented and tested on standard problem instances from engineering applications and benchmarked against various deterministic graph coloring algorithms. Quantified result...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Parallel Computing
دوره 38 شماره
صفحات -
تاریخ انتشار 2012